package com.mall.model.dto;
//封装添加产品类别的请求信息

import lombok.Data;
import lombok.ToString;

import javax.validation.constraints.Max;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
//DTO ：
//
//        Data Transfer Object数据传输对象
//比如我们一张表有100个字段，那么对应的PO就有100个属性。
//        但是我们界面上只要显示10个字段，
//        客户端用WEB service来获取数据，没有必要把整个PO对象传递到客户端，
//        这时我们就可以用只有这10个属性的DTO来传递结果到客户端，这样也不会暴露服务端表结构.到达客户端以后，如果用这个对象来对应界面显示，那此时它的身份就转为VO
//
@Data
@ToString
public class AddCategoryRequest {
    @NotBlank(message = "产品类别不能为null")
    @Size(max = 5,min = 2,message = "长度介于2-5之间")
    private String name;
    @NotNull(message = "目录层级不能为null")
    @Max(value=3,message = "目录层级不能超过3级")
    private Integer type;
//    父目录id
    @NotNull(message = "父目录id不能为null")
    private Integer parentId;
    //排序字段
    @NotNull(message = "排序字段不能为null")
    private Integer orderNum;
}
